package com.david.auth.jwt;

/**
 * jwt_token 载荷常量
 */
public interface JwtPayloadConstants {

    /**
     * 公共载体-iss (issuer)：签发人
     */
    String PUBLIC_ISS="iss";

    /**
     * 公共载体-aud (audience)：受众
     */
    String PUBLIC_AUD="aud";

    /**
     * 公共载体-sub (subject)：主题、用户、username
     */
    String PUBLIC_SUB="sub";

    /**
     * 公共载体-exp (expiration time)：过期时间
     */
    String PUBLIC_EXP="exp";

    /**
     * 公共载体-iat (Issued At)：签发时间
     */
    String PUBLIC_IAT="iat";

    /**
     * 公共载体-nbf(Not Before)：定义在什么时间之前，该jwt都是不可用的
     */
    String PUBLIC_NBF="nbf";

    /**
     * 公共载体-jti(JWT ID)：jwt的唯一身份标识，主要用来作为一次性token,从而回避重放攻击
     */
    String PUBLIC_JTI="jti";
    /**
     * 是否refresh_token标志(is refresh token)
     */
    String IRT = "irt";

    /**
     * 私有载体-用户id
     */
    String PRIVATE_UID="uid";

    /**
     * 私有载体-用户名称
     */
     String PRIVATE_UNAME="uname";

    /**
     * 私有载体-账户类型(user帐号，或者client客户端)
     */
    String PRIVATE_UTYPE="utype";

    /**
     * 私有载体-salt
     */
    String PRIVATE_SALT="salt";

    /**
     * 租户ID
     */
    String TENANT_ID = "tenantId";
    /**
     * 应用ID
     */
    String APP_ID = "appId";

}
